Skip to content

[translation] Update translation from Crowdin - #864

Merged
JingMatrix merged 23 commits into
masterfrom
l10n_master
Aug 11, 2026
Merged

[translation] Update translation from Crowdin#864
JingMatrix merged 23 commits into
masterfrom
l10n_master

Conversation

@JingMatrix

Copy link
Copy Markdown
Owner

No description provided.

@JingMatrix

Copy link
Copy Markdown
Owner Author

The Polish update here needs a few fixes on Crowdin before this goes in.

scope_origin_locked was changed to "Naprawione przez moduł", which means repaired. It labels a scope the module fixed in place and cannot be changed, so the old "Ustalone przez moduł" was correct.

"Scope Request" in xposed_module_request_scope_title and scope_channel_name became "Zakres żądania", which says the scope of a request instead. "Żądanie zakresu" was right.

The one form of modules_batch_all_already_on is now "%1$d był już wyłączony". That is the already off text under the already on key, and it carries a %1$d that the English one form does not have.

home_commit_count has few and many swapped, few should be "zatwierdzenia" and many "zatwierdzeń". home_commits_ahead just below it is correct.

Also strings_logs.xml now writes the daemon as "Deamon", "Daemon" and "Demon" in different places. The first one is a typo.

@JingMatrix

Copy link
Copy Markdown
Owner Author

@Kuchta2100, please improve the quality of Polish translation from the Crowdin side.

@Kuchta2100

Kuchta2100 commented Aug 6, 2026

Copy link
Copy Markdown

All done, now is 100% fixed and correct.
Daemon is correct - is name service, that's why in Polish it is not translated as Demon (supernatural, paranormal being)

Most of the sync is an improvement and stays. Polish settles on
"framework" where the file had been split ten lines using "szkielet"
against twelve using "framework", including the adjacent
modules_incompatible and modules_incompatible_legacy pair; ten Polish
plural sets that had been stubbed one/other gained the few and many forms
the language needs, so "Włączono moduły: 3" becomes "Włączono 3 moduły";
the daemon's notifications lose two calques of "on user X"; and Japanese
store_downloading and logs_part drop shapes that read ambiguously for the
"1.2 MB of 3.4 MB" the source comment asks for. None of that is touched.

What is undone falls in five groups.

Meaning. settings_doh_bypassed had stopped saying that the proxy is the
thing resolving names, which is the only reason the string exists, and
launcher_install_conflict replaced "before this one will fit" with "so
that this key matches", which the source never says. Polish and Japanese
logs_dropped both read "longer than the viewer indexes" as a plural noun
rather than a verb, leaving "longer than the viewer's indexes" in two
languages independently; the English is ambiguous enough to be worth
rewording at the source. Japanese logs_loading gave up "Indexing…" for a
generic loading message, and it is the one string that says why the wait
exists.

Grammar. home_people_count_plain rendered "2 osób", where the nominative
few form is "osoby"; logs_dropped disagreed in case across "Najstarsze
%1$d wierszy", and now says "linii" like every other line reference in
that file; and logs_rotate_unreachable left "z Daemon" uninflected after
a preposition governing the instrumental. That last is a symptom - the
sync had swapped "usługa" for an indeclinable English "Daemon" in seven
places across strings_logs.xml and strings.xml, so all seven go back.

Mood. home_history_loading, home_window_changed and
language_system_summary had become imperatives, telling the reader to
reach further back, to display saved activity and to choose a language,
where the app is narrating a spinner, a state and a preference.
store_tab_readme went furthest and named a file with the imperative
"Przeczytaj"; it keeps the sync's intent to name the file rather than
paraphrase it, as "Readme".

Register. The four framework status words share a headline row with the
wordmark, and the sync left two lowercase verb phrases, one clause and
one gerund there, so "Vector jest aktywny" sat beside "Vector Wersje się
nie zgadzają". All four read as labels again, none of them a finite verb
phrase. store_all_current is lowercase again because it renders after a
"·" in the store header, as it does in every other locale; retry matches
settings_doh_retry rather than disagreeing with it;
modules_batch_all_already_on stops collapsing into
modules_batch_already_on and matches the "off" variant beside it; and
nav_home is "Start" again, "Strona główna" being thirteen characters in a
four-item navigation bar.

Consistency. store_info_scope_installed arrived new in eight languages
and five placed it correctly. Turkish said "Kancalar" beside "Hook'lar",
Arabic "العناصر المُعترضة" beside "الارتباطات", and both Chinese variants
目标/目標 beside 对象/對象, each on the same tab as the label it
disagrees with.

Placeholders were sound throughout the sync and stay sound: none is
added, dropped or reordered here.
@JingMatrix

JingMatrix commented Aug 11, 2026

Copy link
Copy Markdown
Owner Author

About the last commit on this PR

Before merging this sync I ran an AI review over it, and then reverted part of what it flagged. I want to be upfront about how that was done, because most of this is volunteer work and it deserves an explanation rather than a silent revert.

This review is purely AI. I read English, French and Chinese. That is the whole list. For the Chinese strings below I can confirm the change myself; for Polish, Japanese, Turkish, Arabic and everything else, I am taking a model's word for it and I have no way to check whether it is right. I merged its conclusions because the reasoning it gave was specific and checkable against the source strings — not because I can read the result.

So please treat every point below as a question, not a correction. If you speak one of these languages and the review got your string wrong, just say so and I will revert it. You do not need to argue the case or convince me; I would far rather trust a person who speaks the language than a model that does not.

Most of the sync is a real improvement and is merged as it stands. What went back was a smaller set where the review argued the string had changed meaning, broken grammar, or turned a narration into an instruction.

One thing held up everywhere: not a single placeholder was added, dropped or reordered in the whole sync, across fifteen files. That is the part that actually breaks the app, and nobody broke it.

Polish

This file got the most work, and a lot of it was overdue.

Kept: the file finally settles on "framework" — it had been split ten lines using "szkielet" against twelve using "framework", including the neighbouring modules_incompatible and modules_incompatible_legacy, which disagreed with each other. Ten plural sets that had been stubbed out as one/other gained proper few and many forms, so "Włączono moduły: 3" becomes "Włączono 3 moduły". The daemon notifications lost two calques of "on user X" ("na użytkowniku %2$s" → "dla użytkownika %2$s"), plus "menadżer" → "menedżer" and the title-cased "Żądanie Zakresu". action_update_choose was a genuine mistranslation fix: "Several builds" had been "Kilka wydań". And the store strings unified on "katalog" instead of drifting between that and "repozytorium".

Reverted:

  • home_people_count_plain — the few form became "%1$d osób", which renders "2 osób". The review says the nominative few form is "osoby".
  • logs_dropped — "dłuższy niż indeksy przeglądarki" reads the English "indexes" as a plural noun; it is a verb there. Also "Najstarsze %1$d wierszy" disagreed in case, and now says "linii" to match every other line reference in that file.
  • "Daemon" replaced "usługa" in seven places across strings_logs.xml and strings.xml. Left uninflected it reads as an English noun, and in logs_rotate_unreachable it was said to be outright ungrammatical — "z Daemon", after a preposition governing the instrumental.
  • settings_doh_bypassed — the new wording stopped saying that the proxy is the thing resolving names, which is the only reason the string exists.
  • launcher_install_conflict — "Usuń ją, aby ten klucz pasował". The source says the existing copy has to go before this one will fit; it says nothing about keys matching.
  • home_history_loading, home_window_changed, language_system_summary — these became imperatives, telling the reader to reach further back, to display saved activity, to choose a language. The app is describing a spinner, a state and a preference.
  • home_contributors_by_recent — "Najnowsze", where the label heads a list of people.
  • store_tab_readme — "Przeczytaj" is the imperative "Read!" on a tab that names a file. I kept the intent to name it rather than paraphrase it, as "Readme".
  • The four status_* words share one headline row with the wordmark, so they have to be the same shape. The sync left two lowercase verb phrases, one clause and one gerund there, so "Vector jest aktywny" sat next to "Vector Wersje się nie zgadzają". They are back to "Aktywny / Problemy / Nieaktywowany / Niezgodność wersji".
  • store_asset_downloads — the noun pobranie became the adjective pobrany; it counts downloads.
  • store_all_current was capitalised, but it renders mid-phrase after a "·" in the store header.
  • retry became "Ponów" while settings_doh_retry stayed "Spróbuj ponownie".
  • modules_batch_all_already_on — the one form collapsed into modules_batch_already_on and no longer matched its "off" twin.
  • nav_home — "Strona główna" is the more faithful translation, but it is thirteen characters in a four-item navigation bar. This one is my call about width, not a language judgement; happy to put it back if you think it fits.

That is a long list against one language, and I am conscious it reads harshly. It is long mostly because Polish is the only file that got a full rewrite in this sync — the others changed a line or two. The rewrite also carried the single biggest improvement in the PR.

Japanese

Kept: store_downloading is much clearer as "ダウンロード中: %1$s / %2$s" — the old form used 中 twice with ambiguous particles. Same for logs_part as "分割ログ %1$d / %2$d", and バージョン %1$s に更新 disambiguates a bare version number. Naming the file README rather than paraphrasing it as 説明 is right, and so is カタログ → リポジトリ, which follows the English "repository".

Reverted:

  • logs_dropped — "ビューアーのインデックスよりも長く" makes the same misreading as the Polish: the source means "longer than what the viewer indexes", not "longer than the viewer's indexes".
  • logs_loading — "Indexing…" became a generic "ログを読み込んでいます…". It is the one string that tells the user why the wait exists; now "インデックスを作成中…".

One left alone: nav_store is still カタログ while the store screen now says リポジトリ. English has the same split (a "Store" tab over a "repository" body), so I did not force it — but if you would rather they matched, say which way.

Turkish

Only the one new string. store_info_scope_installed came in as "Kancalar, kurulu kopyaya göre", sitting directly under store_info_scope "Hook'lar" on the same tab. Changed to "Hook'lar, kurulu kopyaya göre" so the tab uses one term. Nothing else touched. If "Kancalar" is the better Turkish and store_info_scope is the one that should change, tell me and I will flip it that way instead.

Arabic

Only the one new string, same shape of issue. It came in as "العناصر المُعترضة" while store_info_scope says "الارتباطات" and store_info_scope_undeclared uses تربط — three terms for hooking on one tab. Unified on "الارتباطات، بحسب النسخة المثبَّتة". Same offer: if "الارتباطات" is the wrong term to standardise on, say which one is right.

Chinese (Simplified and Traditional)

Only the one new string in each: 挂钩目标 / 掛鉤目標 sat directly beneath 挂钩对象 / 掛鉤對象. Unified on 对象 / 對象. This is the one I can vouch for myself.

Russian, Ukrainian, Korean, Persian, Vietnamese

Nothing to change. The new string landed correctly and consistently with its neighbours in all five. Thank you.

@JingMatrix

Copy link
Copy Markdown
Owner Author

@Kuchta2100 Please check the above review

@JingMatrix
JingMatrix merged commit a0ab735 into master Aug 11, 2026
1 check passed
@JingMatrix
JingMatrix deleted the l10n_master branch August 11, 2026 18:58
@kukIux

kukIux commented Aug 11, 2026

Copy link
Copy Markdown

Some fix in Ukrainian translate done.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants